package schema

// SpecialUserPark 特殊门禁管理
type SpecialUserPark struct {
	ID              int64    `json:"id" bson:"_id"`                            //数据库的索引键
	RecordID        string   `json:"record_id" bson:"record_id"`               //uuid
	UserID          string   `json:"user_id" bson:"user_id"`                   //用户的record_id
	Parks           []string `json:"parks" bson:"parks"`                       //授权区域节点
	EntrancesFrozen []string `json:"entrances_frozen" bson:"entrances_frozen"` //冻结的门禁设备的record_id
	Creator         string   `json:"creator" bson:"creator"`                   //创建人
	Created         int64    `json:"created" bson:"created"`                   //创建时间
	Deleted         int64    `json:"deleted" bson:"deleted"`                   //删除时间
}

// Validate 参数校验方法
func (a *SpecialUserPark) Validate() error {
	return nil
}

// QuerySpecialParkEntrance 查询特殊人员授权区域参数
type QuerySpecialParkEntrance struct {
	ParkID []string `json:"park_id"` //建筑(节点)的record_id
	//OperationType	int	`json:"operation_type"`	//操作类型:1->增加 2->减少
}

// Validate 参数校验方法
func (a *QuerySpecialParkEntrance) Validate() error {
	return nil
}

// ParamUserParkEntrance 创建参数
type ParamUserParkEntrance struct {
	UserID          string   `json:"user_id"`          //用户record_id
	Parks           []string `json:"parks"`            //建筑(节点)的record_id
	EntrancesFrozen []string `json:"entrances_frozen"` //冻结的门禁设备的record_id
	OperateType     int      `json:"operate_type"`
}

// Validate 参数校验方法
func (a *ParamUserParkEntrance) Validate() error {
	return nil
}

// UserEntranceParams 参数结构
type UserEntranceParams struct {
	NickName       string `json:"nick_name"`       //昵称
	RealName       string `json:"real_name"`       //真名
	ContractTel    string `json:"contract_tel"`    //联系电话
	Gender         string `json:"gender"`          //性别
	EnterpriseName string `json:"enterprise_name"` //企业名称
}

// ResponseItemUserEntrance 返回数据格式
type ResponseItemUserEntrance struct {
	UserID         string `json:"user_id" bson:"user_id"`                 //用户的record_id
	NickName       string `json:"nick_name" bson:"nick_name"`             //昵称
	RealName       string `json:"real_name" bson:"real_name"`             //真名
	ContractTel    string `json:"contract_tel" bson:"contract_tel"`       //联系电话
	Gender         string `json:"gender" bson:"gender"`                   //性别
	EnterpriseName string `json:"enterprise_name" bson:"enterprise_name"` //企业名称
	UserType       string `json:"user_type" bson:"user_type"`             //用户类型
	Operator       string `json:"operator" bson:"operator"`               //操作人
	OperatorTime   int64  `json:"operator_time" bson:"operator_time"`     //操作时间
}
